FSM API icon

FSM API

(0 reviews)

API Specification EN

The FSM API supports the following endpoints:

This endpoint requires the next HTTP header

Content-type: application/json
X-Conversation-Id: {Optional header parameter provided by the client}
client_id: {Mandatory header parameter provided by Dali platform}
client_secret: {Mandatory header parameter provided by Dali platform}

POST /rest/v2/tickets

Send a intervention request to the LOOMA application

The body to put in the POST operation has the following format:

{
  "ticketExternalId": "name of the ticket in the partner system",
  "ticketBusinessStatus": "Looma status of the ticket",
  "ticketPriority": "priority of the ticket",
  "ticketType": "business type of the ticket (example : corrective maintenance)",
  "problemTypeCode": "contractual domain determined by VFF",
  "ticketOriginCode": "origin code of the ticket",
  "ticketClient": "name of client link to a ticket",
  "companyName": "name of the LOOMA environment",
  "ticketSubject": "subject of the ticket",
  "ticketRemarks": "remark of the ticket",
  "lastActivityRemark": "technician's note of the last intervention",
  "dutyFlag": boolean,
  "outsideBundleFlag": boolean,
  "clientPresenceFlag": boolean,
  "doNotStartBeforeDate": "yyyy-mm-ddThh:mm:ssZ",
  "ticketClientValidator": "email of the validator",
  "workImpactUrgency": "priority in my work",
  "workEnvironmentImpactUrgency": "priority in my work environment",
  "siteArrivalContractualDate": "yyyy-mm-ddThh:mm:ssZ",
  "siteId": "intervention site",
  "contactExternalId": "contact identification",
  "contactEmailAddress": "contact email adresse",
  "contactFirstName": "contact first name",
  "contactLastName": "contact last name",
  "contactMobilePhone": "contact mobile phone",
  "additionalContact": "additional contact",
  "ticketEquipmentId": "ticket equipment ID",
  "serviceLevel1": "category 1 service catalog",
  "serviceLevel2": "category 2 service catalog",
}

PATCH /rest/v2/tickets/{ticketId}

Modify a intervention request by his ID

The body to put in the PATCH operation has the following format:

{
  "ticketExternalId": "name of the ticket in the partner system",
  "ticketBusinessStatus": "Looma status of the ticket",
  "ticketPriority": "priority of the ticket",
  "ticketType": "business type of the ticket (example : corrective maintenance)",
  "problemTypeCode": "contractual domain determined by VFF",
  "ticketOriginCode": "origin code of the ticket",
  "ticketClient": "name of client link to a ticket",
  "companyName": "name of the LOOMA environment",
  "ticketSubject": "subject of the ticket",
  "ticketRemarks": "remark of the ticket",
  "lastActivityRemark": "technician's note of the last intervention",
  "dutyFlag": boolean,
  "outsideBundleFlag": boolean,
  "clientPresenceFlag": boolean,
  "doNotStartBeforeDate": "yyyy-mm-ddThh:mm:ssZ",
  "ticketClientValidator": "email of the validator",
  "workImpactUrgency": "priority in my work",
  "workEnvironmentImpactUrgency": "priority in my work environment",
  "siteArrivalContractualDate": "yyyy-mm-ddThh:mm:ssZ",
  "siteId": "intervention site",
  "contactExternalId": "contact identification",
  "contactEmailAddress": "contact email adresse",
  "contactFirstName": "contact first name",
  "contactLastName": "contact last name",
  "contactMobilePhone": "contact mobile phone",
  "additionalContact": "additional contact",
  "ticketEquipmentId": "ticket equipment ID",
  "serviceLevel1": "category 1 service catalog",
  "serviceLevel2": "category 2 service catalog",
}

PATCH /rest/v2/tickets

Modify a intervention request by the ticketCode/ticketExternalId

This endpoint supports the following query parameters and their combinations:

  • ticketCode={ticketCode}: query parameter allowing to PATCH a request intervention by his code
  • ticketExternalId={ticketExternalId}: query parameter allowing to PATCH a request intervention by the externalId

The body to put in the PATCH operation has the following format:

{
  "ticketExternalId": "name of the ticket in the partner system",
  "ticketBusinessStatus": "Looma status of the ticket",
  "ticketPriority": "priority of the ticket",
  "ticketType": "business type of the ticket (example : corrective maintenance)",
  "problemTypeCode": "contractual domain determined by VFF",
  "ticketOriginCode": "origin code of the ticket",
  "ticketClient": "name of client link to a ticket",
  "companyName": "name of the LOOMA environment",
  "ticketSubject": "subject of the ticket",
  "ticketRemarks": "remark of the ticket",
  "lastActivityRemark": "technician's note of the last intervention",
  "dutyFlag": boolean,
  "outsideBundleFlag": boolean,
  "clientPresenceFlag": boolean,
  "doNotStartBeforeDate": "yyyy-mm-ddThh:mm:ssZ",
  "ticketClientValidator": "email of the validator",
  "workImpactUrgency": "priority in my work",
  "workEnvironmentImpactUrgency": "priority in my work environment",
  "siteArrivalContractualDate": "yyyy-mm-ddThh:mm:ssZ",
  "siteId": "intervention site",
  "contactExternalId": "contact identification",
  "contactEmailAddress": "contact email adresse",
  "contactFirstName": "contact first name",
  "contactLastName": "contact last name",
  "contactMobilePhone": "contact mobile phone",
  "additionalContact": "additional contact",
  "ticketEquipmentId": "ticket equipment ID",
  "serviceLevel1": "category 1 service catalog",
  "serviceLevel2": "category 2 service catalog",
}

GET /rest/v2/tickets/{ticketId}

Receive a intervention request by the ID

This endpoint requires the next HTTP header

Content-type: application/json
X-Conversation-Id: {Optional header parameter provided by the client}
client_id: {Mandatory header parameter provided by Dali platform}
client_secret: {Mandatory header parameter provided by Dali platform}
companyName : {Mandatory header parameter provided by Vinci Facilities}

The payload returned by the GET operation has the following format:

{
    "header": {

        "apiname" : "{name of the API}",
        "apiversion": "{schema version following single digit format X}",
        "correlationId": "{correlationId conveyed all along the transaction}"
    },
"data": [
{
  "ticketExternalId": "name of the ticket in the partner system",
  "ticketId": "id of internal ticket in LOOMA",
  "ticketCode": "code of the internal ticket in LOOMA",
  "ticketBusinessStatus": "Looma status of the ticket",
  "ticketPriority": "priority of the ticket",
  "ticketType": "business type of the ticket (example : corrective maintenance)",
  "problemTypeCode": "contractual domain determined by VFF",
  "ticketOriginCode": "origin code of the ticket",
  "ticketClient": "name of client link to a ticket",
  "companyName": "name of the LOOMA environment",
  "ticketSubject": "subject of the ticket",
  "ticketRemarks": "remark of the ticket",
  "lastActivityRemark": "technician's note of the last intervention",
  "dutyFlag": boolean,
  "outsideBundleFlag": boolean,
  "clientPresenceFlag": boolean,
  "doNotStartBeforeDate": "yyyy-mm-ddThh:mm:ssZ",
  "ticketClientValidator": "email of the validator",
  "workImpactUrgency": "priority in my work",
  "workEnvironmentImpactUrgency": "priority in my work environment",
  "siteArrivalContractualDate": "yyyy-mm-ddThh:mm:ssZ",
  "siteId": "intervention site",
  "contactExternalId": "contact identification",
  "contactEmailAddress": "contact email adresse",
  "contactFirstName": "contact first name",
  "contactLastName": "contact last name",
  "contactMobilePhone": "contact mobile phone",
  "additionalContact": "additional contact",
  "ticketEquipmentId": "ticket equipment ID",
  "serviceLevel1": "category 1 service catalog",
  "serviceLevel2": "category 2 service catalog",
}
]

GET /rest/v2/tickets/

Receive a intervention request by the ticketCode/ticketExternalId

This endpoint requires the next HTTP header

Content-type: application/json
X-Conversation-Id: {Optional header parameter provided by the client}
client_id: {Mandatory header parameter provided by Dali platform}
client_secret: {Mandatory header parameter provided by Dali platform}
companyName : {Mandatory header parameter provided by Vinci Facilities}

This endpoint supports the following query parameters and their combinations:

  • ticketCode={ticketCode}: query parameter allowing to GET a request intervention by his code
  • ticketExternalId={ticketExternalId}: query parameter allowing to GET a request intervention by the externalId

The payload returned by the GET operation has the following format:

{
    "header": {

        "apiname" : "{name of the API}",
        "apiversion": "{schema version following single digit format X}",
        "correlationId": "{correlationId conveyed all along the transaction}"
    },
"data": [
{
  "ticketExternalId": "name of the ticket in the partner system",
  "ticketId": "id of internal ticket in LOOMA",
  "ticketCode": "code of the internal ticket in LOOMA",
  "ticketBusinessStatus": "Looma status of the ticket",
  "ticketPriority": "priority of the ticket",
  "ticketType": "business type of the ticket (example : corrective maintenance)",
  "problemTypeCode": "contractual domain determined by VFF",
  "ticketOriginCode": "origin code of the ticket",
  "ticketClient": "name of client link to a ticket",
  "companyName": "name of the LOOMA environment",
  "ticketSubject": "subject of the ticket",
  "ticketRemarks": "remark of the ticket",
  "lastActivityRemark": "technician's note of the last intervention",
  "dutyFlag": boolean,
  "outsideBundleFlag": boolean,
  "clientPresenceFlag": boolean,
  "doNotStartBeforeDate": "yyyy-mm-ddThh:mm:ssZ",
  "ticketClientValidator": "email of the validator",
  "workImpactUrgency": "priority in my work",
  "workEnvironmentImpactUrgency": "priority in my work environment",
  "siteArrivalContractualDate": "yyyy-mm-ddThh:mm:ssZ",
  "siteId": "intervention site",
  "contactExternalId": "contact identification",
  "contactEmailAddress": "contact email adresse",
  "contactFirstName": "contact first name",
  "contactLastName": "contact last name",
  "contactMobilePhone": "contact mobile phone",
  "additionalContact": "additional contact",
  "ticketEquipmentId": "ticket equipment ID",
  "serviceLevel1": "category 1 service catalog",
  "serviceLevel2": "category 2 service catalog",
}
]

POST /rest/v1/attachments

Send an attachment on a service request to the LOOMA app

The body to insert in the POST operation has the following format:

[{
  "attachmentFileName": "attachmentFileName.pdf",
  "ticketExternalId": "idExterne",
  "attachmentType": "PDF",
  "attachmentExternalId": "attachmentExternalId",
  "attachmentCategory": "LOOMA-XXX",
  "attachmentFileContent": "content"
}]
Tag NameMandatoryTypeDescription
attachmentFileNameYTexteName of the attachment
attachmentTypeTexteattachment Type
attachmentExternalIdTexteAttachment external Id de la pièce jointe
ticketExternalIdYTexteTicket External Id
attachmentCategoryYTexteAttachment category
AttachementFileContentTexteFile content (5 Mo max)

GET /rest/v1/site-locations

Retrieve a site by its id

This endpoint requires the next HTTP header

Content-type: application/json
X-Conversation-Id: {Optional header parameter provided by the client}
client_id: {Mandatory header parameter provided by Dali platform}
client_secret: {Mandatory header parameter provided by Dali platform}

This endpoint supports the following query parameter and their combination:

  • siteId={siteId}: request parameter allowing to obtain a request for a site by its id

The payload returned by the GET operation has the following format :

{
    "header": {
        "apiname" : "{name of the API}",
        "apiversion": "{schema version following single digit format X}",
        "correlationId": "{correlationId conveyed all along the transaction}"
    },
    "data": [
        {
            "siteId": "siteId",
            "locationId": "locationId",
            "locationNodeId": "nodeId",
            "locationParentNodeId": "parentNodeId",
            "locationHierarchyLevel": "locationHierarchyLevel",
            "locationDescription": "Description",
            "locationDesignation": "Designation",
            "locationType": "Type",
            "subLevels": [
                {
                    "siteId": "siteId",
                    "locationId": "locationId",
                    "locationNodeId": "nodeId",
                    "locationParentNodeId": "parentNodeId",
                    "locationHierarchyLevel": "locationHierarchyLevel",
                    "locationDescription": "Description",
                    "locationDesignation": "Designation",
                    "locationType": "Type"
                }
            ]
        }
    ],

POST /rest/v1/location-nodes

Send a localisation element present (building, floor, room) on a site

This endpoint requires the next HTTP header

Content-type: application/json
X-Conversation-Id: {Optional header parameter provided by the client}
client_id: {Mandatory header parameter provided by Dali platform}
client_secret: {Mandatory header parameter provided by Dali platform}

The body to put in the POST operation has the following format :

{
  "loomaTypeId": "Type",
  "siteId": "XXXX/00000XX",
  "superiorLocationId": "XXXX/00000XX/00X/000X",
  "typeId": "LOCAL TECHNIQUE",
  "locationName": "API location",
  "userStatusId": "XX",
  "sensitive": "true",
  "scope": "ScopeName"
}
Tag nameMandatoryTypeDescription
loomaTypeIdYTextelocalisation type
siteIdTexteSite Id
superiorLocationIdTexteSuperior location Id
typeIdYTexteLocalisation type
locationNameYTexteLocalisation name
userStatusIdTexteUser Status Id
sensitiveTexteSensitive
scopeTexteScope

Reviews